package com.ld.hpfs.dao;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import org.springframework.stereotype.Repository;

@Repository
public interface DealAbandonMapper {

	void setToDealAbandon(HashMap<String, Object> param);

	void saveChangeInfo(HashMap<String, Object> param);

	List<HashMap<String,Object>> getdealAbandonList(HashMap<String, Object> param);

	HashMap<String, Object> findInfoByNum(HashMap<String,Object> num);

	void dealAbandonInfoSave(HashMap<String, Object> param);

	List<HashMap<String,Object>> getTestInfo(HashMap<String, Object> param);

	void docTypeUpdate(HashMap<String, Object> param);

	int getDealAbandonCount(HashMap<String, Object> param);

	void deleteDealabandonByDocNo(HashMap<String, Object> param);

	void setDocStatus(HashMap<String, Object> param);

	HashMap<String, Object> getInfoByDoc(HashMap<String, Object> param);

	List<HashMap<String, Object>> getInfo(HashMap<String, Object> param);

	void infoDelete(HashMap<String, Object> param);

	List<HashMap<String, Object>> getDocStatusInfo(HashMap<String, Object> param);

	List<HashMap<String, Object>> getInvoiceInfo(HashMap<String, Object> param);

	void updateInvoiceInfo(HashMap<String, Object> param);

	ArrayList<HashMap<String, Object>> getCheckLevel(HashMap<String, Object> param);
	
	ArrayList<HashMap<String, Object>> getCheckRights(HashMap<String, Object> param);
	
	HashMap<String, Object> getStatusByDoc(HashMap<String, Object> param);
	
	void updateStatus(HashMap<String, Object> param);

	/**
	 * 获取当前红废票状态
	 * @param param
	 * @return
	 */
	HashMap<String, Object> getInvoiceStatus(HashMap<String, Object> param);
	/**
	 * 获取所有一级审核者
	 * @param cpnId 
	 * @return
	 */
	ArrayList<HashMap<String, Object>> getCheckLevel1(String cpnId);
	/**
	 * 获取所有二级审核者
	 * @return
	 */
	ArrayList<HashMap<String, Object>> getCheckLevel2(String cpnId);
	/**
	 * 获取当前红废票申请者信息
	 * @param userId 申请者id
	 * @return
	 */
	HashMap<String, Object> getMsgForApplicant(String userId);
	
	ArrayList<HashMap<String, Object>> getAbandonType(HashMap<String, Object> param);

	void DealAbandonInfoupdate(HashMap<String, Object> param);

	int getLastInsert(HashMap<String, Object> param);

	void updateBaseOnSp(HashMap<String, Object> param);

	HashMap<String, Object> getAbandonCount(HashMap<String, Object> param);
	// 红废查询单据号
	ArrayList<HashMap<String, Object>> getAbandonNo(
			HashMap<String, Object> param);
	// 红废查询客户
	ArrayList<HashMap<String, Object>> getDealAbandonCust(
			HashMap<String, Object> param);
	// 更新红废票
	void dealAbandonUpdate(HashMap<String, Object> param);

	ArrayList<HashMap<String, Object>> checkEditRight(HashMap<String, Object> param);

	int getAandonStatus(HashMap<String, Object> param);
	
	ArrayList<HashMap<String,Object>> getInvoiceNumBegin(HashMap<String, Object> param);
	
	ArrayList<HashMap<String,Object>> getInvoiceNumEnd(HashMap<String, Object> param);
	
	ArrayList<HashMap<String,Object>> getInvoiceCodetoAbandon(HashMap<String, Object> param);
	
	ArrayList<HashMap<String,Object>> getInoviceIdEnd();
	
	ArrayList<HashMap<String,Object>> getRoleById(HashMap<String, Object> param);
}
